package org.jsola.hr.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.vo.BaseVO;

import java.util.Date;

import static org.jsola.core.example.BaseExample.E_GMT_CREATE;
import static org.jsola.core.example.BaseExample.E_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.E_ID;
import static org.jsola.core.example.BaseExample.N_GMT_CREATE;
import static org.jsola.core.example.BaseExample.N_GMT_MODIFIED;
import static org.jsola.core.example.BaseExample.N_ID;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_ACTUAL_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_ATTEND_PLAN_ID;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_ATTEND_PLAN_NAME;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_COMPANY_ID;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_COMPANY_NAME;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_DAILY;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_EARLY_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_IS_USED;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_LATE_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_LEAVE_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_MONTHLY;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_OFF_WORK_MISS_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_ON_WORK_MISS_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_SHOULD_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_SUMMARY_DATE;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.E_YEARLY;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_ACTUAL_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_ATTEND_PLAN_ID;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_ATTEND_PLAN_NAME;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_COMPANY_ID;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_COMPANY_NAME;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_DAILY;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_EARLY_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_IS_USED;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_LATE_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_LEAVE_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_MONTHLY;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_OFF_WORK_MISS_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_ON_WORK_MISS_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_SHOULD_PEOPLES;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_SUMMARY_DATE;
import static org.jsola.hr.example.AttendPunchDailySummaryExample.N_YEARLY;

/**
 * @author zhr
 */
@EqualsAndHashCode(callSuper = true)
@ApiModel(description = "【考勤打卡日汇总】列表展示对象")
@Data
public class AttendPunchDailySummaryListVO extends BaseVO {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(notes = N_ID, example = E_ID)
    private String id;

    @ApiModelProperty(notes = N_COMPANY_ID, example = E_COMPANY_ID)
    private String companyId;

    @ApiModelProperty(notes = N_COMPANY_NAME, example = E_COMPANY_NAME)
    private String companyName;

    @ApiModelProperty(notes = N_ATTEND_PLAN_ID, example = E_ATTEND_PLAN_ID)
    private String attendPlanId;

    @ApiModelProperty(notes = N_ATTEND_PLAN_NAME, example = E_ATTEND_PLAN_NAME)
    private String attendPlanName;

    @ApiModelProperty(notes = N_YEARLY, example = E_YEARLY)
    private String yearly;

    @ApiModelProperty(notes = N_MONTHLY, example = E_MONTHLY)
    private String monthly;

    @ApiModelProperty(notes = N_DAILY, example = E_DAILY)
    private String daily;

    @ApiModelProperty(notes = N_SUMMARY_DATE, example = E_SUMMARY_DATE)
    private Date summaryDate;

    @ApiModelProperty(notes = N_SHOULD_PEOPLES, example = E_SHOULD_PEOPLES)
    private Integer shouldPeoples;

    @ApiModelProperty(notes = N_ACTUAL_PEOPLES, example = E_ACTUAL_PEOPLES)
    private Integer actualPeoples;

    @ApiModelProperty(notes = N_LATE_PEOPLES, example = E_LATE_PEOPLES)
    private Integer latePeoples;

    @ApiModelProperty(notes = N_EARLY_PEOPLES, example = E_EARLY_PEOPLES)
    private Integer earlyPeoples;

    @ApiModelProperty(notes = N_ON_WORK_MISS_PEOPLES, example = E_ON_WORK_MISS_PEOPLES)
    private Integer onWorkMissPeoples;

    @ApiModelProperty(notes = N_OFF_WORK_MISS_PEOPLES, example = E_OFF_WORK_MISS_PEOPLES)
    private Integer offWorkMissPeoples;

    @ApiModelProperty(notes = N_LEAVE_PEOPLES, example = E_LEAVE_PEOPLES)
    private Integer leavePeoples;

    @ApiModelProperty(notes = N_IS_USED, example = E_IS_USED)
    private Integer isUsed;

    @ApiModelProperty(notes = N_GMT_CREATE, example = E_GMT_CREATE)
    private Date gmtCreate;

    @ApiModelProperty(notes = N_GMT_MODIFIED, example = E_GMT_MODIFIED)
    private Date gmtModified;



}

